403Webshell
Server IP : 121.121.20.254  /  Your IP : 216.73.216.202
Web Server : Microsoft-IIS/10.0
System : Windows NT WEB-SERVER 10.0 build 20348 (Windows Server 2022) AMD64
User : IUSR ( 0)
PHP Version : 8.3.28
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/Python313/Lib/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/Python313/Lib/test/__pycache__/test_bz2.cpython-313.opt-2.pyc
�

��iw�����SSKJr SSKJrJr SSKrSSKrSSKrSSKJrJ	r	 SSK
r
SSKrSSKrSSK
r
SSKrSSKrSSKrSSKrSSKJr SSKJr SSKJrJr SSKrSSKr\R2"S5rSS	KJrJrJr SqS
r"SS\R@5r!"S
S\!5r""SS\!5r#"SS\!5r$"SS\!5r%"SS\!5r&Sr'\(S:Xa\RR"5 gg)�)�support)�
bigmemtest�_4GN)�BytesIO�DEFAULT_BUFFER_SIZE)�
import_helper)�threading_helper)�unlink�FakePath�bz2)�BZ2File�
BZ2Compressor�BZ2Decompressorc��[c[[R"S55q[(a[R
"S/US9$[RU5$)N�bunzip2)�input)�has_cmdline_bunzip2�bool�shutil�which�
subprocess�check_outputr�
decompress)�datas �"C:\Python313\\Lib\test\test_bz2.py�ext_decompressrsF���"�"�6�<�<�	�#:�;�����&�&�	�{�$�?�?��~�~�d�#�#�c	�8�\rSrSr/SQrSR\5rSrSrSr	\
RS5rSr
SrSr\"S	5r\R$"\R(R\R*"\R(R-\55S
55Hhr\"\S5r\R75r\\R;\5-
r\\-
rSSS5 \R=\5S	:�dMU\\R?5-
r O S
r Sr!Sr"g!,(df   NE=f)�BaseTest�&)s root:x:0:0:root:/root:/bin/bash
sbin:x:1:1:bin:/bin:
sdaemon:x:2:2:daemon:/sbin:
sadm:x:3:4:adm:/var/adm:
slp:x:4:7:lp:/var/spool/lpd:
s sync:x:5:0:sync:/sbin:/bin/sync
s-shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
s!halt:x:7:0:halt:/sbin:/sbin/halt
s"mail:x:8:12:mail:/var/spool/mail:
s"news:x:9:13:news:/var/spool/news:
s#uucp:x:10:14:uucp:/var/spool/uucp:
s operator:x:11:0:operator:/root:
s!games:x:12:100:games:/usr/games:
s,gopher:x:13:30:gopher:/usr/lib/gopher-data:
s(ftp:x:14:50:FTP User:/var/ftp:/bin/bash
s#nobody:x:65534:65534:Nobody:/home:
s.postfix:x:100:101:postfix:/var/spool/postfix:
s-niemeyer:x:500:500::/home/niemeyer:/bin/bash
s>postgres:x:101:102:PostgreSQL Server:/var/lib/pgsql:/bin/bash
s6mysql:x:102:103:MySQL server:/var/lib/mysql:/bin/bash
s#www:x:103:104::/var/www:/bin/false
rs�BZh91AY&SY.�N>_�@��n?��0���F��#&�F��Ц�MQ���4hh$�i4�4S�<Q�H���Շ���
��I��/Epu�]ɻDL
Q	1ߠ���2O9��7d�I�J�L#����/��#C��W����M��Xa<e�t�L�����˄.�����`n}�lh	E,�ZVH>���9gd6
�Պ��.K�v��xw�ߡ���|/";���ձ#A���o��y\�O煚��f8�2��"%�>V,��z⟣�"�E)I�^��r�U�2�6���U��0��^��DF����ݸ����ankR���3]���f��"6l$�j@���l1..�k�ls����E��
��k��n��Q�%y�v��z��̹zn7.G�]��B@�!8`sBZh9rE8P�sthis is not a valid bzip2 file�314159265359r�z*.py�rbNc�h�[R"5uol[R"U5 g�N)�tempfile�mkstemp�filename�os�close)�self�fds  r�setUp�BaseTest.setUp\s ��$�,�,�.���M�
����rc�.�[UR5 gr%)r
r(�r+s r�tearDown�BaseTest.tearDown`s���t�}�}�r)r()#�__name__�
__module__�__qualname__�__firstlineno__�
TEXT_LINES�join�TEXT�DATA�
EMPTY_DATA�BAD_DATA�bytes�fromhex�bz2_block_magic�	test_size�BIG_TEXT�BIG_DATAr�
compressor�globr)�path�escape�dirname�__file__�fname�open�fh�readr�compress�count�flushr-r1�__static_attributes__�rrrr&s��
�J�.�8�8�J��D�^�D�4�J�0�H��m�m�N�3�O��I��H��H��q�!�J����2�7�7�<�<����B�G�G�O�O�H�4M�(N�PV�W�X��
�%��
�"��7�7�9�D��
�+�+�D�1�1�H����H���>�>�/�*�Q�.��
�(�(�*�*�H��Y����
�s�"*D�
D	rc��\rSrSrSDSjrSrSrSrSrSr	Sr
S	rS
rSr
SrS
rSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSrSr Sr!S r"S!r#S"r$S#r%S$r&S%r'S&r(S'r)S(r*S)r+S*r,S+r-S,r.S-r/S.r0S/r1S0r2\3Rh"5S15r5S2r6S3r7S4r8S5r9S6r:S7r;S8r<S9r=S:r>S;r?S<r@S=rAS>rBS?rCS@rDSArESBrFgC)E�BZ2FileTest�dc���[URS5nURURU-5 URU5 SSS5 g!,(df   g=f)N�wb)rJr(�writer:)r+�streams�suffix�fs    r�createTempFile�BZ2FileTest.createTempFilegs>��
�$�-�-��
&�!�
�G�G�D�I�I��'�(�
�G�G�F�O�'�
&�
&�s�0A�
Ac�,�UR[[S5 UR[[[R
S5 UR[[[R
S5 UR[[[R
S5 UR[[[R
SS9 UR[[[R
SS9 UR[[[R
SS	5 g)
Ngw��/�^@�z�rx�rbtr��
compresslevel�
�r�)�assertRaises�	TypeErrorr
�
ValueErrorr)�devnullr0s r�testBadArgs�BZ2FileTest.testBadArgsls������)�W�g�6����*�g�r�z�z�3�?����*�g�r�z�z�4�@����*�g�r�z�z�5�A����*�g�r�z�z���K����*�g�r�z�z���L�	
���)�W�b�j�j�#�q�Arc�(�UR5 [UR5nUR[UR
[
55 URUR5UR5 SSS5 g!,(df   g=fr%�	r[r
r(rfrgrL�float�assertEqualr9�r+�bz2fs  r�testRead�BZ2FileTest.testReadwsZ������
�T�]�]�
#�t����i����E�G�<����T�Y�Y�[�$�)�)�4�$�
#�
#�s�AB�
Bc���URSURS9 [UR5nUR	[
UR5 SSS5 g!,(df   g=f)Nr�rXrY)r[r<r
r(rf�OSErrorrLrps  r�testReadBadFile�BZ2FileTest.testReadBadFile}sG�����A�d�m�m��<�
�T�]�]�
#�t����g�t�y�y�1�$�
#�
#�s�!A�
A(c�,�URSS9 [UR5nUR[UR
[
55 URUR5URS-5 SSS5 g!,(df   g=f�N��rXrmrps  r�testReadMultiStream�BZ2FileTest.testReadMultiStream�sc�����A��&�
�T�]�]�
#�t����i����E�G�<����T�Y�Y�[�$�)�)�a�-�8�$�
#�
#�s�AB�
Bc��[Rn[UR5[lUR	SS9 [UR5nUR[UR[55 URUR5URS-5 SSS5 U[lg!,(df   N=f!U[lf=frz)
�_compression�BUFFER_SIZE�lenr:r[r
r(rfrgrLrnror9)r+�buffer_sizerqs   r�testReadMonkeyMultiStream�%BZ2FileTest.testReadMonkeyMultiStream�s���#�.�.��#&�t�y�y�>�� �	3������*�����'�4��!�!�)�T�Y�Y���@�� � �����d�i�i�!�m�<�(�(3�L�$�	(�'��(3�L�$�s$�$C�AB?�+C�?
C
�	C�
Cc���URURS9 [UR5nUR	UR5UR5 SSS5 g!,(df   g=f)N)rY�r[r<r
r(rorLr9rps  r�testReadTrailingJunk� BZ2FileTest.testReadTrailingJunk�sK�����4�=�=��1�
�T�]�]�
#�t����T�Y�Y�[�$�)�)�4�$�
#�
#�s�+A#�#
A1c���URSURS9 [UR5nUR	UR5URS-5 SSS5 g!,(df   g=f)Nr{rur�rps  r�testReadMultiStreamTrailingJunk�+BZ2FileTest.testReadMultiStreamTrailingJunk�sQ�����A�d�m�m��<�
�T�]�]�
#�t����T�Y�Y�[�$�)�)�a�-�8�$�
#�
#�s�.A'�'
A5c��UR5 [UR5nUR[UR
[
55 URURS5S5 SSS5 g!,(df   g=f)Nrr)r[r
r(rfrgrLrnrorps  r�	testRead0�BZ2FileTest.testRead0�sX������
�T�]�]�
#�t����i����E�G�<����T�Y�Y�q�\�3�/�$�
#�
#�s�AA:�:
Bc��UR5 [UR5nSnURS5nU(dOX#-
nMUR	X R
5 SSS5 g!,(df   g=f)Nrrc�r[r
r(rLror9�r+rq�text�strs    r�testReadChunk10�BZ2FileTest.testReadChunk10�sc������
�T�]�]�
#�t��D���i�i��m�������	�

���T�9�9�-�$�
#�
#�s�>A-�-
A;c��URSS9 [UR5nSnURS5nU(dOX#-
nMUR	X R
S-5 SSS5 g!,(df   g=f)Nr{r|rrcr�r�s    r�testReadChunk10MultiStream�&BZ2FileTest.testReadChunk10MultiStream�sl�����A��&�
�T�]�]�
#�t��D���i�i��m�������	�

���T�9�9�q�=�1�$�
#�
#�s�AA/�/
A=c���UR5 [UR5nURUR	S5UR
SS5 SSS5 g!,(df   g=f)NrT)r[r
r(rorLr9rps  r�testRead100�BZ2FileTest.testRead100�sJ������
�T�]�]�
#�t����T�Y�Y�s�^�T�Y�Y�t��_�=�$�
#�
#���/A�
A,c��UR5 [UR5nUR5nUR	[U5S5 UR
URRU55 URUR5UR5 SSS5 g!,(df   g=f�Nr)r[r
r(�peek�assertNotEqualr��
assertTruer9�
startswithrorL)r+rq�pdatas   r�testPeek�BZ2FileTest.testPeek�s|������
�T�]�]�
#�t��I�I�K�E�����E�
�A�.��O�O�D�I�I�0�0��7�8����T�Y�Y�[�$�)�)�4�	$�
#�
#�s�BB/�/
B=c��UR5 [UR5nSn[U5nUR	URU5U5 UR	X0RSU5 [UR5U-
n[[UR55nUR	URU5U5 UR	USUURU*S5 SSS5 g!,(df   g=f)N�)r[r
r(�	bytearrayro�readintor9r�)r+rq�n�bs    r�testReadInto�BZ2FileTest.testReadInto�s�������
�T�]�]�
#�t��A��!��A����T�]�]�1�-�q�1����Q�	�	�"�1�
�.��D�I�I���"�A��#�d�i�i�.�)�A����T�]�]�1�-�q�1����Q�r��U�D�I�I�q�b�c�N�3�$�
#�
#�s�CC6�6
Dc�*�UR5 [UR5nUR[UR
S5 URH#nURUR5U5 M% SSS5 g!,(df   g=fr%�r[r
r(rfrg�readliner7ro�r+rq�lines   r�testReadLine�BZ2FileTest.testReadLine�sb������
�T�]�]�
#�t����i�����=������ � �����$�7�(�$�
#�
#�s�AB�
Bc�.�URSS9 [UR5nUR[UR
S5 URS-H#nURUR5U5 M% SSS5 g!,(df   g=frzr�r�s   r�testReadLineMultiStream�#BZ2FileTest.testReadLineMultiStream�sl�����A��&�
�T�]�]�
#�t����i�����=����!�+��� � �����$�7�,�$�
#�
#�s�AB�
Bc��UR5 [UR5nUR[UR
S5 UR
UR5UR5 SSS5 g!,(df   g=fr%�r[r
r(rfrg�	readlinesror7rps  r�
testReadLines�BZ2FileTest.testReadLines�sY������
�T�]�]�
#�t����i�����>����T�^�^�-�t���?�$�
#�
#�s�AA;�;
B	c��URSS9 [UR5nUR[UR
S5 UR
UR5URS-5 SSS5 g!,(df   g=frzr�rps  r�testReadLinesMultiStream�$BZ2FileTest.testReadLinesMultiStream�sc�����A��&�
�T�]�]�
#�t����i�����>����T�^�^�-�t����/B�C�$�
#�
#�s�AA=�=
Bc���UR5 [UR5nUR[	[U55UR5 SSS5 g!,(df   g=fr%�r[r
r(ro�list�iterr7rps  r�testIterator�BZ2FileTest.testIterator�sE������
�T�]�]�
#�t����T�$�t�*�-�t���?�$�
#�
#�r�c���URSS9 [UR5nUR[	[U55URS-5 SSS5 g!,(df   g=frzr�rps  r�testIteratorMultiStream�#BZ2FileTest.testIteratorMultiStream�sO�����A��&�
�T�]�]�
#�t����T�$�t�*�-�t����/B�C�$�
#�
#�s�2A � 
A.c���UR5 [UR5nUR5 UR	[
[U5 UR	[
UR5 gr%)r[r
r(r*rfrh�nextr�rps  r�testClosedIteratorDeadlock�&BZ2FileTest.testClosedIteratorDeadlock�sK�������t�}�}�%���
�
�����*�d�D�1����*�d�n�n�5rc��[URS5nUR[UR5 UR	UR
5 SSS5 [
URS5nUR[UR55UR
5 SSS5 g!,(df   Na=f!,(df   g=f)N�wr#�
r
r(rfrgrWr9rJrorrL�r+rqrZs   r�	testWrite�BZ2FileTest.testWrites���
�T�]�]�C�
(�D����i����4��J�J�t�y�y�!�)��$�-�-��
&�!����^�A�F�F�H�5�t�y�y�A�'�
&�)�
(��'�
&���<B.�14B?�.
B<�?
C
c��[URS5nSnURUS-US-S-nU(dOURU5 US-
nM8SSS5 [	URS5nUR[
UR55UR5 SSS5 g!,(df   Na=f!,(df   g=f)Nr�rrcr"r#)r
r(r9rWrJrorrL)r+rqr�r�rZs     r�testWriteChunks10�BZ2FileTest.testWriteChunks10s���
�T�]�]�C�
(�D��A���i�i��"��a��c�2�X�.�����
�
�3���Q����)��$�-�-��
&�!����^�A�F�F�H�5�t�y�y�A�'�
&�)�
(��'�
&�r�c�t�[RURSS9n[URSSS9nURUR5 SSS5 [
URS5nURUR5U5 SSS5 g!,(df   NN=f!,(df   g=f)Nr{rar�r#)	rrMr9r
r(rWrJrorL)r+�expectedrqrZs    r� testWriteNonDefaultCompressLevel�,BZ2FileTest.testWriteNonDefaultCompressLevels}���<�<��	�	��<�;��
�T�]�]�C�q�
9�T��J�J�t�y�y�!�:�
�$�-�-��
&�!����Q�V�V�X�x�0�'�
&�:�
9��
&�
&�s�B�.!B)�
B&�)
B7c���[URS5nUR[UR5 UR	UR
5 SSS5 UR[WRS/5 [URS5nUR[UR55UR5 SSS5 g!,(df   N�=f!,(df   g=f)Nr��ar#)r
r(rfrg�
writelinesr7rhrJrorrLr9r�s   r�testWriteLines�BZ2FileTest.testWriteLiness���
�T�]�]�C�
(�D����i����9��O�O�D�O�O�,�)�
	
���*�d�o�o��u�=�
�$�-�-��
&�!����^�A�F�F�H�5�t�y�y�A�'�
&�
)�
(��'�
&�s�<C�4C!�
C�!
C/c�l�[URS5nURS5 SSS5 [URS5nUR[URS5 UR[UR
S/5 SSS5 g!,(df   Nq=f!,(df   g=f)Nr�sabcrd�a)r
r(rWrfrvr�rps  r�testWriteMethodsOnReadOnlyFile�*BZ2FileTest.testWriteMethodsOnReadOnlyFile%s}��
�T�]�]�C�
(�D��J�J�v��)��T�]�]�C�
(�D����g�t�z�z�4�8����g�t�����?�)�
(�)�
(��)�
(�s�B�AB%�
B"�%
B3c�|�[URS5nUR[UR5 UR	UR
5 SSS5 [URS5nUR[UR5 UR	UR
5 SSS5 [
URS5nUR[UR55UR
S-5 SSS5 g!,(df   N�=f!,(df   Nu=f!,(df   g=f)Nr�r�r#�r�r�s   r�
testAppend�BZ2FileTest.testAppend-s���
�T�]�]�C�
(�D����i����4��J�J�t�y�y�!�)��T�]�]�C�
(�D����i����4��J�J�t�y�y�!�)��$�-�-��
&�!����^�A�F�F�H�5�t�y�y�1�}�E�'�
&�
)�
(��)�
(��'�
&�s#�<D�1<D�7D-�
D�
D*�-
D;c�>�UR5 [UR5nUR[UR
5 URS5 UR
UR5URSS5 SSS5 g!,(df   g=f�N�)	r[r
r(rfrg�seekrorLr9rps  r�testSeekForward�BZ2FileTest.testSeekForward7sg������
�T�]�]�
#�t����i����3��I�I�c�N����T�Y�Y�[�$�)�)�C�D�/�:�$�
#�
#�s�AB�
Bc�h�URSS9 [UR5nUR[UR
5 UR[
UR5S-5 URUR5URSS5 SSS5 g!,(df   g=f)Nr�r|r�)
r[r
r(rfrgr�r�r9rorLrps  r�testSeekForwardAcrossStreams�(BZ2FileTest.testSeekForwardAcrossStreams>sz�����A��&�
�T�]�]�
#�t����i����3��I�I�c�$�)�)�n�s�*�+����T�Y�Y�[�$�)�)�C�D�/�:�$�
#�
#�s�A5B#�#
B1c�"�UR5 [UR5nURS5 UR	SS5 URUR5URSS5 SSS5 g!,(df   g=f�Ni��j���r"i^)r[r
r(rLr�ror9rps  r�testSeekBackwards�BZ2FileTest.testSeekBackwardsEsb������
�T�]�]�
#�t��I�I�c�N��I�I�d�A�����T�Y�Y�[�$�)�)�G�H�*=�>�$�
#�
#�s�AB�
Bc��URSS9 [UR5n[UR5S-nUS:�a%U[URU55-nUS:�aM%UR
SS5 URUR5URSSUR-5 SSS5 g!,(df   g=f)Nr�r|rTrr�r"i���)r[r
r(r�r9rLr�ro)r+rq�readtos   r�testSeekBackwardsAcrossStreams�*BZ2FileTest.testSeekBackwardsAcrossStreamsLs������A��&�
�T�]�]�
#�t�����^�c�)�F��1�*��#�d�i�i��/�0�0���1�*��I�I�d�A�����T�Y�Y�[�$�)�)�G�H�*=��	�	�*I�J�$�
#�
#�s�AB>�)AB>�>
Cc�,�UR5 [UR5nURSS5 UR	UR5UR[UR5S-
S5 SSS5 g!,(df   g=f)Nr�r�r�)r[r
r(r�rorLr9r�rps  r�testSeekBackwardsFromEnd�$BZ2FileTest.testSeekBackwardsFromEndUse������
�T�]�]�
#�t��I�I�d�A�����T�Y�Y�[�$�)�)�C��	�	�N�3�4F�4G�*H�I�$�
#�
#�s�AB�
Bc��URSS9 [UR5nURSS5 UR	UR5URS-SS5 SSS5 g!,(df   g=f)Nr�r|i���)r[r
r(r�rorLr9rps  r�%testSeekBackwardsFromEndAcrossStreams�1BZ2FileTest.testSeekBackwardsFromEndAcrossStreams[s`�����A��&�
�T�]�]�
#�t��I�I�e�Q�����T�Y�Y�[�4�9�9�q�=�%�&�*A�B�$�
#�
#�s�AA1�1
A?c�J�UR5 [UR5nURS5 UR	UR5[
UR55 UR	UR5S5 SSS5 g!,(df   g=f�N��Ir�	r[r
r(r�ro�tellr�r9rLrps  r�testSeekPostEnd�BZ2FileTest.testSeekPostEndash������
�T�]�]�
#�t��I�I�f�����T�Y�Y�[�#�d�i�i�.�9����T�Y�Y�[�#�.�$�
#�
#�s�A%B�
B"c�N�URSS9 [UR5nURS5 UR	UR5[
UR5S-5 UR	UR5S5 SSS5 g!,(df   g=f�Nr{r|rrrrps  r�testSeekPostEndMultiStream�&BZ2FileTest.testSeekPostEndMultiStreamhsr�����A��&�
�T�]�]�
#�t��I�I�f�����T�Y�Y�[�#�d�i�i�.�1�*<�=����T�Y�Y�[�#�.�$�
#�
#�s�A(B�
B$c�l�UR5 [UR5nURS5 URS5 UR	UR5[
UR55 UR	UR5S5 SSS5 g!,(df   g=frrrps  r�testSeekPostEndTwice� BZ2FileTest.testSeekPostEndTwiceost������
�T�]�]�
#�t��I�I�f���I�I�f�����T�Y�Y�[�#�d�i�i�.�9����T�Y�Y�[�#�.�	$�
#�
#�s�A6B%�%
B3c�p�URSS9 [UR5nURS5 URS5 UR	UR5[
UR5S-5 UR	UR5S5 SSS5 g!,(df   g=fr	rrps  r�testSeekPostEndTwiceMultiStream�+BZ2FileTest.testSeekPostEndTwiceMultiStreamws~�����A��&�
�T�]�]�
#�t��I�I�f���I�I�f�����T�Y�Y�[�#�d�i�i�.�1�*<�=����T�Y�Y�[�#�.�	$�
#�
#�s�A9B'�'
B5c�8�UR5 [UR5nURS5 UR	UR5S5 UR	UR
5UR5 SSS5 g!,(df   g=f)Nr�r�r[r
r(r�rorrLr9rps  r�testSeekPreStart�BZ2FileTest.testSeekPreStartsc������
�T�]�]�
#�t��I�I�d�O����T�Y�Y�[�!�,����T�Y�Y�[�$�)�)�4�$�
#�
#�s�AB�
Bc�<�URSS9 [UR5nURS5 UR	UR5S5 UR	UR
5URS-5 SSS5 g!,(df   g=f)Nr�r|r�rrrps  r�testSeekPreStartMultiStream�'BZ2FileTest.testSeekPreStartMultiStream�sl�����A��&�
�T�]�]�
#�t��I�I�d�O����T�Y�Y�[�!�,����T�Y�Y�[�$�)�)�a�-�8�$�
#�
#�s�AB
�
Bc��UR5 [URS5n[U5nUR	UR5UR55 UR
5 SSS5 UR[WR
5 g!UR
5 f=f!,(df   ND=f�Nr#)	r[rJr(r
ro�filenor*rfrh)r+�rawfrqs   r�
testFileno�BZ2FileTest.testFileno�s�������
�$�-�-��
&�$��4�=�D�
�� � ��������
�>��
�
��'�	
���*�d�k�k�2���
�
���'�
&�s"�B1�.B�"B1�B.�.B1�1
B?c�t�[[UR55nURUR	55 UR5 URUR	55 UR
5 UR[UR5 [[5S5nURUR	55 UR
5 UR[UR5 [UR5nSUl[U5nURUR	55 UR
5 UR[UR5 g!UR
5 f=f!UR
5 f=f!UR
5 f=f)Nr�c��g)NFrQrQrr�<lambda>�*BZ2FileTest.testSeekable.<locals>.<lambda>�s��ur)
r
rr:r��seekablerLr*rfrh�assertFalse)r+rq�srcs   r�testSeekable�BZ2FileTest.testSeekable�s!���w�t�y�y�)�*��	��O�O�D�M�M�O�,��I�I�K��O�O�D�M�M�O�,��J�J�L����*�d�m�m�4��w�y�#�&��	����T�]�]�_�-��J�J�L����*�d�m�m�4��d�i�i� ��$����s�|��	����T�]�]�_�-��J�J�L����*�d�m�m�4��#
�J�J�L��
�J�J�L��
�J�J�L�s$�AE;�3F�+F%�;F
�F"�%F7c�Z�[[UR55nURUR	55 UR5 URUR	55 UR
5 UR[UR5 [[5S5nURUR	55 UR
5 UR[UR5 g!UR
5 f=f!UR
5 f=f�Nr�)
r
rr:r��readablerLr*rfrhr$rps  r�testReadable�BZ2FileTest.testReadable�s����w�t�y�y�)�*��	��O�O�D�M�M�O�,��I�I�K��O�O�D�M�M�O�,��J�J�L����*�d�m�m�4��w�y�#�&��	����T�]�]�_�-��J�J�L����*�d�m�m�4��
�J�J�L��
�J�J�L���AD�3D�D�D*c�Z�[[UR55nURUR	55 UR5 URUR	55 UR
5 UR[UR5 [[5S5nURUR	55 UR
5 UR[UR5 g!UR
5 f=f!UR
5 f=fr))
r
rr:r$�writablerLr*rfrhr�rps  r�testWritable�BZ2FileTest.testWritable�s����w�t�y�y�)�*��	����T�]�]�_�-��I�I�K����T�]�]�_�-��J�J�L����*�d�m�m�4��w�y�#�&��	��O�O�D�M�M�O�,��J�J�L����*�d�m�m�4��
�J�J�L��
�J�J�L�r-c�t�UR5 [S5Hn[UR5nAM g)Ni')r[�ranger
r()r+�i�os   r�testOpenDel�BZ2FileTest.testOpenDel�s-�������u��A���
�
�&�A��rc�:�UR[[S5 g)Nz
/non/existent)rfrvr
r0s r�testOpenNonexistent�BZ2FileTest.testOpenNonexistent�s�����'�7�O�<rc���Sn[URS5nURU5 SSS5 [UR5nUR	5nSSS5 URWS/5 [UR5n[
UR	55nSSS5 URWS/5 g!,(df   N�=f!,(df   N}=f!,(df   ND=f)Ns,BZh91AY&SY�b�]� !�h3M<]��BCe�%trVsTest)rJr(rWr
r�ror�)r+rrZrq�lines�xliness      r�testReadlinesNoNewline�"BZ2FileTest.testReadlinesNoNewline�s���z��
�$�-�-��
&�!�
�G�G�D�M�'�
�T�]�]�
#�t��N�N�$�E�$������	�*�
�T�]�]�
#�t��$�.�.�*�+�F�$�����'��+�'�
&��
#�
#��$�
#�s#�B?�C�	C!�?
C
�
C�!
C/c��[URS5nURS5 SSS5 [URS5nUR5 U SSS5 UR	S5 [URS5nSS- SSS5 UR	S5 g!,(df   N�=f!,(df   Ng=f![
a Nef=f!,(df   NR=f![a gf=f)NrVsxxxr#z4__enter__ on a closed file didn't raise an exceptionr"rz1/0 didn't raise an exception)r
r(rWr*�failrh�ZeroDivisionError�r+rZs  r�testContextProtocol�BZ2FileTest.testContextProtocol�s���
�T�]�]�D�
)�Q�
�G�G�F�O�*��D�M�M�4�(��	���	�	N����

�I�I�L�M�	7������-���!��.�

�I�I�5�6�#*�
)��
����	��	��
.�-�� �	��	�s_�B,�C�B=�C�6C/�C�C/�,
B:�=
C�C�
C�C�
C,�(C/�/
C<�;C<c�J^^�SS-mSn[URS5mUU4Sjn[U5Vs/sHn[R"US9PM nn[
R"U5 SSS5 SSS5 gs snf!,(df   N=f!,(df   g=f)N�1ircrVc�L>�[S5HnTRT5 M g�Nr{)r3rW)r4rrZs ��r�comp�'BZ2FileTest.testThreading.<locals>.comps����q��A��G�G�D�M�"r)�target)r
r(r3�	threading�Threadr	�
start_threads)r+�nthreadsrJr4�threadsrrZs     @@r�
testThreading�BZ2FileTest.testThreading�s�����e�|����
�T�]�]�D�
)�Q�
"�?D�H�o�N�o��y�'�'�t�4�o�G�N�!�/�/��8��9�*�
)��O�8�8��*�
)�s4�B�A>�B�+B�-B�>B�
B	�
B�
B"c��UR5 [URS5nUS-n[UR5nURU5 UR
[U5URSUS5 UR
UR5URUS5 SSS5 [UR5nUR5 UR
[U5URS5 UR
UR5URS5 SSS5 [UR5nUR5 UR[[U5 UR
UR5/5 SSS5 g!,(df   N�=f!,(df   N�=f!,(df   g=f)Nrr�r")
r[r�r7r
r(rLror�r9r�r�rf�
StopIteration)r+�linelen�halflenrqs    r�testMixedIterationAndReads�&BZ2FileTest.testMixedIterationAndReads	sN�������d�o�o�a�(�)���Q�,��
�T�]�]�
#�t��I�I�g�����T�$�Z�����);�G�H�)E�F����T�Y�Y�[�$�)�)�G�H�*=�>�$��T�]�]�
#�t��M�M�O����T�$�Z�����);�<����T�]�]�_�d�o�o�a�.@�A�$��T�]�]�
#�t��N�N�����m�T�4�8����T�^�^�-�r�2�$�
#�$�
#��$�
#��$�
#�s'�A*F"�
A&F3�
AG�"
F0�3
G�
Gc��SnSn[URS5nURU5 SSS5 [URS5nURU5 SSS5 [UR5nURUR	5X-5 SSS5 g!,(df   N=f!,(df   N`=f!,(df   g=f)Ns�foofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoofoos�barbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarbarr�r�)r
r(rWrorL)r+�data1�data2rqs    r�testMultiStreamOrdering�#BZ2FileTest.testMultiStreamOrderings�������
�T�]�]�C�
(�D��J�J�u��)�
�T�]�]�C�
(�D��J�J�u��)�
�T�]�]�
#�t����T�Y�Y�[�%�-�8�$�
#�	)�
(��
(�
(��
#�
#�s#�B&�B7�:#C�&
B4�7
C�
Cc��[URS5nURS5 URURUR5 URUR
5[5 URURS5 URUR5S5 URUR5S5 URUR5S5 URURS5 SSS5 URWRS5 UR[5 UR SSS5 UR[UR5 URURS5 UR[UR5 UR[UR5 UR[UR5 [URS5nURS5 URURUR5 URUR
5[5 URURS5 URUR5S5 URUR5S5 URUR5S5 URURS5 SSS5 URURS5 UR[5 UR SSS5 UR[UR5 URURS5 UR[UR5 UR[UR5 UR[UR5 [URS5nURUR!5S5 URURUR5 URUR
5[5 URURS5 URUR5S5 URUR5S5 URUR5S5 URURS5 SSS5 URURS5 UR[5 UR SSS5 UR[UR5 URURS5 UR[UR5 UR[UR5 UR[UR5 g!,(df   GN�=f!,(df   GN�=f!,(df   GN=f!,(df   GN�=f!,(df   GN:=f!,(df   GN=f�	NrV�contentFT�ab�appendixr#�contentappendix)r
r(rWro�name�assertIsInstancer�int�mode�assertIsr*r/r#�closedrfrhrLrCs  r�testOpenFilename�BZ2FileTest.testOpenFilename%s
��
�T�]�]�D�
)�Q�
�G�G�J�����Q�V�V�T�]�]�3��!�!�!�(�(�*�c�2����Q�V�V�T�*��M�M�!�*�*�,��.��M�M�!�*�*�,��-��M�M�!�*�*�,��.��M�M�!�(�(�E�*�*�	
�
�
�a�h�h��%�
�
�
�z�
*�
�F�F�+����*�a�h�h�/��������&����*�a�j�j�1����*�a�j�j�1����*�a�j�j�1�
�T�]�]�D�
)�Q�
�G�G�K� ����Q�V�V�T�]�]�3��!�!�!�(�(�*�c�2����Q�V�V�T�*��M�M�!�*�*�,��.��M�M�!�*�*�,��-��M�M�!�*�*�,��.��M�M�!�(�(�E�*�*�	
�
�
�a�h�h��%�
�
�
�z�
*�
�F�F�+����*�a�h�h�/��������&����*�a�j�j�1����*�a�j�j�1����*�a�j�j�1�
�T�]�]�D�
)�Q����Q�V�V�X�'9�:����Q�V�V�T�]�]�3��!�!�!�(�(�*�c�2����Q�V�V�T�*��M�M�!�*�*�,��-��M�M�!�*�*�,��.��M�M�!�*�*�,��-��M�M�!�(�(�E�*�*�	
�
�
�a�h�h��%�
�
�
�z�
*�
�F�F�+����*�a�h�h�/��������&����*�a�j�j�1����*�a�j�j�1����*�a�j�j�1�i*�
)��+�
*��*�
)��+�
*��*�
)��+�
*�sJ�C4W-�
W?�C4X�8
X#�?DX5�;
Y�-
W<�?
X�
X �#
X2�5
Y�
Yc��
�[URS5n[US5nURS5 UR	UR
UR
5 UR	UR
5UR
55 UR	URS5 URUR5S5 URUR5S5 URUR5S5 URURS5 SSS5 URWRS5 UR[5 UR
 SSS5 UR[UR5 UR	URS5 UR[UR5 UR[UR5 UR[UR5 SSS5 [URS5n[US5nURS5 UR	UR
UR
5 UR	UR
5UR
55 UR	URS5 URUR5S5 URUR5S5 URUR5S5 URURS5 SSS5 URWRS5 UR[5 UR
 SSS5 UR[UR5 UR	URS5 UR[UR5 UR[UR5 UR[UR5 SSS5 [URS5n[US5nUR	UR5S5 UR	UR
UR
5 UR	UR
5UR
55 UR	URS5 URUR5S5 URUR5S5 URUR5S5 URURS5 SSS5 URWRS5 UR[5 UR
 SSS5 UR[UR5 UR	URS5 UR[UR5 UR[UR5 UR[UR5 SSS5 g!,(df   GN/=f!,(df   GN�=f!,(df   GNi=f!,(df   GNR=f!,(df   GN=f!,(df   GN�=f!,(df   GNf=f!,(df   GN2=f!,(df   g=fr`)rJr(r
rWrorerrhrir*r/r#rjrfrhrL)r+�rawrZs   r�testOpenFileWithName� BZ2FileTest.testOpenFileWithName\st��
�$�-�-��
&�#���d�#�q����
�#�� � �������2�� � �����S�Z�Z�\�:�� � �����.��
�
�a�j�j�l�E�2��
�
�a�j�j�l�D�1��
�
�a�j�j�l�E�2��
�
�a�h�h��.�$�
�M�M�!�(�(�D�)��"�"�:�.����/����j�!�(�(�3����Q�V�V�T�*����j�!�*�*�5����j�!�*�*�5����j�!�*�*�5�#'�&�$�-�-��
&�#���d�#�q�����$�� � �������2�� � �����S�Z�Z�\�:�� � �����.��
�
�a�j�j�l�E�2��
�
�a�j�j�l�D�1��
�
�a�j�j�l�E�2��
�
�a�h�h��.�$�
�M�M�!�(�(�D�)��"�"�:�.����/����j�!�(�(�3����Q�V�V�T�*����j�!�*�*�5����j�!�*�*�5����j�!�*�*�5�#'�&�$�-�-��
&�#���d�#�q�� � �����+=�>�� � �������2�� � �����S�Z�Z�\�:�� � �����.��
�
�a�j�j�l�D�1��
�
�a�j�j�l�E�2��
�
�a�j�j�l�D�1��
�
�a�h�h��.�$�
�M�M�!�(�(�D�)��"�"�:�.����/����j�!�(�(�3����Q�V�V�T�*����j�!�*�*�5����j�!�*�*�5����j�!�*�*�5�#'�
&�K$�#��/�.��'�
&��($�#��/�.��'�
&��($�#��/�.��'�
&�s��
Y.�C>Y
�"9Y.�
Y�(B$Y.�*
Z$�7C>Z�59Z$�.
Z�;B$Z$�=
[�
D
Z6�9[�
[�B$[�

Y	�Y.�
Y+	�&Y.�.
Y=�
Z	�
Z$�
Z!	�Z$�$
Z3�6
[	�[�
[	�[�
[(c���[5n[US5nURS5 UR[5 UR
 SSS5 UR[RUR5 URURS5 SSS5 UR[5 WR
 SSS5 UR[WR5 [US5nURS5 UR[5 UR
 SSS5 UR[RUR5 URURS5 SSS5 UR[5 UR
 SSS5 UR[UR5 URS5 [US5nURUR5S5 UR[5 UR
 SSS5 UR[RUR5 URURS5 SSS5 UR[5 UR
 SSS5 UR[UR5 g!,(df   GN�=f!,(df   GNL=f!,(df   GN4=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GN=f!,(df   N�=f!,(df   N�=f)NrVrarbrcrr#rd)rr
rWrf�AttributeErrorre�io�UnsupportedOperationrrorhrhr�rL)r+�biorZs   r�testOpenFileWithoutName�#BZ2FileTest.testOpenFileWithoutName�s/���i��
�S�$�
�1�
�G�G�J���"�"�>�2����3����b�5�5�q�x�x�@����Q�V�V�T�*� ��
�
�z�
*�
�F�F�+����*�a�h�h�/�
�S�$�
�1�
�G�G�K� ��"�"�>�2����3����b�5�5�q�x�x�@����Q�V�V�T�*� ��
�
�z�
*�
�F�F�+����*�a�h�h�/������
�S�$�
�1����Q�V�V�X�'9�:��"�"�>�2����3����b�5�5�q�x�x�@����Q�V�V�T�*� ��
�
�z�
*�
�F�F�+����*�a�h�h�/�73�2�� �
��+�
*��3�2�� �
��+�
*��3�2�� �
��+�
*�s��'K�
K�AK�6
K0�7'L�
L�+AL�
L&�(6M
�
L8�+AM
�
M�
K	�K�
K-�0
K?�
L	�L�
L#�&
L5�8
M	�M
�

M�
M)c��[R"UR[R[R-[R
-5n[US5n[
US5nURS5 URURUR5 URUR5UR55 URURS5 SSS5 UR[5 WR SSS5 UR[WR5 SSS5 [R"UR[R[R-[R-5n[US5n[
US5nURS5 URURUR5 URUR5UR55 URURS5 SSS5 UR[5 WR SSS5 UR[WR5 SSS5 [R"UR[R5n[US5n[
US5nURUR!5S5 URURUR5 URUR5UR55 URURS5 SSS5 UR[5 WR SSS5 UR[WR5 SSS5 g!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   GN�=f!,(df   N�=f!,(df   N�=f!,(df   g=f)NrVrarbrcr#rd)r)rJr(�O_WRONLY�O_CREAT�O_TRUNCr
rWrorerrhrfrh�O_APPEND�O_RDONLYrL)r+r,rnrZs    r�testOpenFileWithIntName�#BZ2FileTest.testOpenFileWithIntName�s���
�W�W�T�]�]�B�K�K�"�*�*�$<�r�z�z�$I�
J��
�"�d�^�s���d�#�q����
�#�� � �������2�� � �����S�Z�Z�\�:�� � �����.�	$�
�"�"�:�.����/����j�!�(�(�3���W�W�T�]�]�B�K�K�"�*�*�$<�r�{�{�$J�
K��
�"�d�^�s���d�#�q�����$�� � �������2�� � �����S�Z�Z�\�:�� � �����.�	$�
�"�"�:�.����/����j�!�(�(�3���W�W�T�]�]�B�K�K�
0��
�"�d�^�s���d�#�q�� � �����+=�>�� � �������2�� � �����S�Z�Z�\�:�� � �����.�	$�
�"�"�:�.����/����j�!�(�(�3��^�+$�#��
/�.��
�^��$�#��
/�.��
�^��$�#��
/�.��
�^�s��
O%�+BO�-O%�

O�(O%�$
P�1BO7�3P�
P	�(P�
Q�BP-�&Q�
P>�(Q�
O	�O%�
O"	�O%�%
O4�7
P	�P�	
P	�P�
P*�-
P;	�7Q�>
Q	�Q�
Qc��URn[R"U5n[US5nUR	UR
5 UR
URU5 SSS5 [US5nUR
UR5UR
5 UR
URU5 SSS5 [US5nUR
UR5UR
5 UR
URU5 SSS5 g!,(df   N�=f!,(df   N{=f!,(df   g=f�NrVr#)	r(r)�fsencoder
rWr:rorerL)r+�str_filename�bytes_filenamerZs    r�testOpenBytesFilename�!BZ2FileTest.testOpenBytesFilename�s����}�}�����\�2��
�^�T�
*�a�
�G�G�D�I�I�����Q�V�V�^�4�+��^�T�
*�a����Q�V�V�X�t�y�y�1����Q�V�V�^�4�+��\�4�
(�A����Q�V�V�X�t�y�y�1����Q�V�V�\�2�)�
(�+�
*��+�
*��)�
(�s%�8D&�;AD7�AE�&
D4�7
E�
Ec���[UR5n[US5nURUR5 URURUR5 SSS5 [US5nURUR5UR5 URURUR5 SSS5 g!,(df   Nt=f!,(df   g=fr�)rr(r
rWr:rorerL)r+r(rZs   r�testOpenPathLikeFilename�$BZ2FileTest.testOpenPathLikeFilename�s����D�M�M�*��
�X�t�
$��
�G�G�D�I�I�����Q�V�V�T�]�]�3�%��X�t�
$�����Q�V�V�X�t�y�y�1����Q�V�V�T�]�]�3�%�
$�%�
$��%�
$�s�AC�8AC#�
C �#
C1c�|�[RS[S5-SS9nUR[	U5[
R5 [[U55nURURS5S5 S[-nURURRR5US5 g)N�g��>A�	rar"z)Excessive amount of data was decompressed)rrMrg�
assertLessr�r�r�r
rrorLr�assertLessEqual�_bufferrnr)r+�bomb�decomp�
max_decomps    r�testDecompressLimited�!BZ2FileTest.testDecompressLimited�s����|�|�E�C��H�,�A�|�>������D�	�<�#;�#;�<�����'��������Q���/��,�,�
����V�^�^�/�/�4�4�6�
�7�	9rc�>�[UR5n[U5nUR[UR
[
55 URUR5UR5 UR[5 [R SSS5 URURS5 SSS5 URUR5 SSS5 g!,(df   NV=f!,(df   NC=f!,(df   g=fr)rr:r
rfrgrLrnror9rrrrerhr$rj�r+rurqs   r�testReadBytesIO�BZ2FileTest.testReadBytesIO�s���
�T�Y�Y�
�3������!�!�)�T�Y�Y���@�� � �����d�i�i�8��&�&�~�6��H�H�7�� � ����D�1��
���S�Z�Z�(� �
�7�6����� �
�s;�D�A)C=�C,�$C=�#D�,
C:�6C=�=
D	�D�
Dc��[UR5n[U5nUR5nUR	[U5S5 UR
URRU55 URUR5UR5 SSS5 SSS5 g!,(df   N=f!,(df   g=fr�)rr:r
r�r�r�r�r9r�rorL)r+rurqr�s    r�testPeekBytesIO�BZ2FileTest.testPeekBytesIOs���
�T�Y�Y�
�3������	�	����#�#�C��J��2�����	�	� 4� 4�U� ;�<�� � �����d�i�i�8�	� �
���� �
�s#�C�BB3�"C�3
C	�=C�
Cc�`�[5n[US5nUR[UR5 UR	UR
5 UR[5 [R SSS5 URURS5 SSS5 UR[UR55UR
5 URUR5 SSS5 g!,(df   N�=f!,(df   Nv=f!,(df   g=f)Nr�rV)rr
rfrgrWr9rrrrerorhr�getvaluer$rjr�s   r�testWriteBytesIO�BZ2FileTest.testWriteBytesIOs���
�Y�#���c�"�d��!�!�)�T�Z�Z�8��
�
�4�9�9�%��&�&�~�6��H�H�7�� � ����D�1�#�
���^�C�L�L�N�;�T�Y�Y�G����S�Z�Z�(��Y�7�6��#�"���Y�s<�
D�AD�)C=�:$D�AD�=
D�D�
D	�D�
D-c�h�[UR5n[U5nUR[UR
5 URS5 UR
UR5URSS5 SSS5 SSS5 g!,(df   N=f!,(df   g=fr�)	rr:r
rfrgr�rorLr9r�s   r�testSeekForwardBytesIO�"BZ2FileTest.testSeekForwardBytesIOst��
�T�Y�Y�
�3������!�!�)�T�Y�Y�7��	�	�#��� � �����d�i�i���o�>�� �
���� �
�s#�B#�AB�B#�
B 	�B#�#
B1c�L�[UR5n[U5nURS5 UR	SS5 URUR5URSS5 SSS5 SSS5 g!,(df   N=f!,(df   g=fr�)rr:r
rLr�ror9r�s   r�testSeekBackwardsBytesIO�$BZ2FileTest.testSeekBackwardsBytesIO"so��
�T�Y�Y�
�3������	�	�#���	�	�$��"�� � �����d�i�i���.A�B�� �
���� �
�s#�B�AB�3B�
B	�B�
B#c��URSSn[[U55nUR[UR
5 SSS5 [[U55nUR
UR[UR55UR5 UR[UR
S5 SSS5 [S5HDn[[USU55nUR[UR
S5 SSS5 MF g!,(df   N�=f!,(df   Ns=f!,(df   Mz=f)N���r"�)
r:r
rrf�EOFErrorrLror�r9r3)r+�	truncatedrZr4s    r�test_read_truncated�BZ2FileTest.test_read_truncated)s����I�I�d�s�O�	�
�W�Y�'�
(�A����h����/�)�
�W�Y�'�
(�A����Q�V�V�C��	�	�N�3�T�Y�Y�?����h�����2�)��r��A����2�A��/�0�A��!�!�(�A�F�F�A�6�1�0��
)�
(��
(�
(��
1�0�s$�!D�!A D.�."D?�
D+�.
D<�?
E	c�D�[R"S/SQ5n[U5UR-n[[	5S5nURUR
U5U5 URUR5U5 SSS5 g!,(df   g=f)N�Q)r"r�re�r{r�)�arrayr��itemsizer
rrorWr)r+�q�LENGTHrZs    r�test_issue44439�BZ2FileTest.test_issue444396sl���K�K��_�-���Q��!�*�*�$��
�W�Y��
$�����Q�W�W�Q�Z��0����Q�V�V�X�v�.�%�
$�
$�s
�AB�
BrQN)r"r)Gr3r4r5r6r[rjrrrwr}r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rr
r
rrrrr&r+r0r6r9r>rDr	�requires_working_threadingrRrXr]rkrorvr~r�r�r�r�r�r�r�r�r�r�rPrQrrrSrSdsl���
	B�5�2�
9�3�5�
9�
0�	.�	2�>�
5�
4�8�8�@�D�@�
D�
6�B�
B�1�B�@�F�;�;�?�K�J�C�/�/�/�/�5�9�3�5�45�"5�"�=�
,�7�(�0�0�2�
�3�
�3�"	9�52�n86�t0�B 4�D3�4�	9�)�9�	)�?�C�7�/rrSc�j�\rSrSrSrSrSr\R\	"\
S-SS9S55rS	rS
r
g)�BZ2CompressorTesti?c��[5nUR[UR5 URUR5nX!R5-
nUR
[U5UR5 gr%)rrfrgrMr9rOror�r+�bz2crs   r�testCompress�BZ2CompressorTest.testCompress@sV��������)�T�]�]�3��}�}�T�Y�Y�'���
�
���������-�t�y�y�9rc��[5nURS5nX!R5-
nURX R5 g�Nr)rrMrOror;r�s   r�testCompressEmptyString�)BZ2CompressorTest.testCompressEmptyStringGs7������}�}�S�!���
�
����������/rc��[5nSnSnURUS-US-S-nU(dOX1RU5-
nUS-
nM:X1R5-
nUR	[U5UR5 g)Nrrrcr")rr9rMrOror)r+r�r�rr�s     r�testCompressChunks10�&BZ2CompressorTest.testCompressChunks10Ms������
������)�)�A�b�D�!�A�#�r��*�C����M�M�#�&�&�D�
��F�A��	
�
�
���������-�t�y�y�9rrTr���size�memusec�D�[5nSU-nURU5nXBR5-
nSn[R	U5nUR[
U5U5 UR[
URS55S5 Sng!Snf=f!Snf=f)N�xr)rrMrOrrror��strip)r+r�r�r�
compresseds     r�testCompress4G� BZ2CompressorTest.testCompress4GZs�������d�{��	����t�,�J��*�*�,�&�J��D��~�~�j�)��	����S��Y��-����S����D�!1�2�A�6��D��
�D���D�s�#B�AB�B�Bc���[[RS-5H@nUR[5 [R
"[
5U5 SSS5 MB g!,(df   MT=f�Nr")r3�pickle�HIGHEST_PROTOCOLrfrg�dumpsr�r+�protos  r�
testPickle�BZ2CompressorTest.testPicklelsI���6�2�2�Q�6�7�E��"�"�9�-����]�_�e�4�.�-�8�-�-��� A"�"
A1	rQN)r3r4r5r6r�r�r�r�skip_if_pgo_taskrrr�r�rPrQrrr�r�?sC��:�0�:�
����S�3�Y�q�)��*��� 5rr�c��\rSrSrSrSrSrSrSr\	R\"\S-SS	9S
55r
SrSrS
rSrSrSr\	R(S5rSrSrg)�BZ2DecompressorTestirc�:�UR[[S5 g)N�*)rfrgrr0s r�test_Constructor�$BZ2DecompressorTest.test_Constructorss�����)�_�b�9rc���[5nUR[UR5 URUR5nURX R5 gr%)rrfrgrr:ror9�r+�bz2dr�s   r�testDecompress�"BZ2DecompressorTest.testDecompressvsB��� �����)�T�_�_�5����t�y�y�)������y�y�)rc���[5nSnSnURUS-US-S-nU(dOX!RU5-
nUS-
nM:URX R5 g)Nrrrcr")rr:rror9)r+r�r�r�r�s     r�testDecompressChunks10�*BZ2DecompressorTest.testDecompressChunks10|sl��� ����
����)�)�A�b�D�!�A�#�r��*�C����O�O�C�(�(�D�
��F�A��	
����y�y�)rc���[5nSnURURU-5nURX0R5 URUR
U5 g)Nsthis is unused data)rrr:ror9�unused_data)r+r�r�r�s    r�testDecompressUnusedData�,BZ2DecompressorTest.testDecompressUnusedData�sN��� ��,�����t�y�y��4�5������y�y�)�����)�)�;�7rc���[5nURUR5nUR[URS5 UR[URS5 g)Nsanythingr)rrr:rfr�r�s   r�testEOFError� BZ2DecompressorTest.testEOFError�sH��� �����t�y�y�)�����(�D�O�O�[�A����(�D�O�O�S�9rrTgffffff
@r�c��[SU5n[R"U5nX1S-
U-S--n[R	U5n[5nUR
U5nURXt:H5 SnSnSng!SnSnSnf=f)Ni�r")�min�random�	randbytesrrMrrr�)r+r��	blocksize�blockrr�r��decompresseds        r�testDecompress4G�$BZ2DecompressorTest.testDecompress4G�s����(�$�/�	�� � ��+��		 ��!�V�	�1�A�5�6�D����d�+�J�"�$�D��?�?�:�6�L��O�O�L�0�1��D��J��L���D��J��L�s�AA;�;Bc���[[RS-5H@nUR[5 [R
"[
5U5 SSS5 MB g!,(df   MT=fr�)r3r�r�rfrgr�rr�s  rr��BZ2DecompressorTest.testPickle�sJ���6�2�2�Q�6�7�E��"�"�9�-����_�.��6�.�-�8�-�-�r�c��[5nSn/n[UR5S-
nURUR	URSUUS95 URUR5 UR[US5U5 URUR	SUS95 URUR5 UR[US5U5 URUR	URUSUS95 UR[US5U5 UR(dPURUR	SUS95 UR[US5U5 UR(dMPSRU5nURX0R5 URURS5 g)NrT�@��
max_length���r)
rr�rB�appendrr$�needs_inputror��eofr8rAr�)r+�bzdr��out�len_s     r�testDecompressorChunksMaxsize�1BZ2DecompressorTest.testDecompressorChunksMaxsize�s�������
����4�=�=�!�B�&���
�
�3�>�>�$�-�-���"6�-7�"�9�	:�������)�����S��W��z�2�	�
�
�3�>�>�#�*�>�=�>�������)�����S��W��z�2�	�
�
�3�>�>�$�-�-���"6�-7�"�9�	:����S��R��\�:�6��'�'��J�J�s�~�~�c�j�~�A�B�� � ��S��W��z�:��'�'�'��h�h�s�m������m�m�,�������#�.rc���[5n/nURURURSSSS9S5 UR	URSS55 UR	URURSSS55 UR	URURSS55 URSRU5UR5 g)NrTrr�rr��i��rrorr:r�r8r9�r+rrs   r�test_decompressor_inputbuf_1�0BZ2DecompressorTest.test_decompressor_inputbuf_1�s��������	
�������	�	�$�3��34�(�6�7:�	<�
	�
�
�3�>�>�#�q�)�*�	�
�
�3�>�>�$�)�)�C��"4�b�9�:�	�
�
�3�>�>�$�)�)�C�D�/�2�3�������#���	�	�2rc��[5n/nURURURSSSS9S5 UR	URS55 UR	URURSSS55 UR	URURSSS55 UR	URURSS55 URSRU5UR5 g)N��rr�rir��,r	r
s   r�test_decompressor_inputbuf_2�0BZ2DecompressorTest.test_decompressor_inputbuf_2�s��������	
�������	�	�$�3��34�(�6�7:�	<��
�
�3�>�>�#�&�'�	�
�
�3�>�>�$�)�)�C��"4�a�8�9�	�
�
�3�>�>�$�)�)�C��"4�a�8�9�	�
�
�3�>�>�$�)�)�C�D�/�2�3�������#���	�	�2rc��[5n/nURURURSSS55 URURURSSS55 URURURSS55 UR	SRU5UR5 g)Nrr{rr)rr�rr:ror8r9r
s   r�test_decompressor_inputbuf_3�0BZ2DecompressorTest.test_decompressor_inputbuf_3�s��������	�
�
�3�>�>�$�)�)�D�S�/�1�5�6�	�
�
�3�>�>�$�)�)�C��"4�a�8�9�	�
�
�3�>�>�$�)�)�C�D�/�2�3�������#���	�	�2rc���[5nUR[URURS-5 UR[URURS-5 g)N�)rrf�	Exceptionrr<)r+rs  r�test_failure� BZ2DecompressorTest.test_failuresH��������)�S�^�^�T�]�]�R�5G�H����)�S�^�^�T�]�]�R�5G�Hrc���[R"[S5n[5nU"5n[	S5HnUR5 M UR
U"5U-
SSS9 g)N�gettotalrefcountrTrrc)�delta)r�
get_attribute�sysrr3�__init__�assertAlmostEqual)r+rr�refs_beforer4s     r�test_refleaks_in___init__�-BZ2DecompressorTest.test_refleaks_in___init__s[��"�0�0��6H�I�����&�(���s��A��L�L�N�����/�1�K�?��"��Mrc��UR[R"[5R[	55S5 gr�)ror�__new__rr=r0s r�(test_uninitialized_BZ2Decompressor_crash�<BZ2DecompressorTest.test_uninitialized_BZ2Decompressor_crashs+������0�0��A�#��E�G�,�c�	3rrQN)r3r4r5r6r�r�r�r�r�rr�rrr�r�rrrrr�
refcount_testr"r&rPrQrrr�r�rs���:�*�
*�8�:�
����S�3�Y�s�+�
 �,��
 �7�
/�>3�,3�*3� I�
���N��N�3rr�c�P�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
Srg
)�CompressDecompressTestic��[RUR5nUR[	U5UR5 gr%)rrMr9ror)r+rs  rr��#CompressDecompressTest.testCompresss-���|�|�D�I�I�&�������-�t�y�y�9rc�d�[RS5nURXR5 gr�)rrMror;�r+r�s  rr��.CompressDecompressTest.testCompressEmptyStrings"���|�|�C� ��������/rc�x�[RUR5nURXR5 gr%�rrr:ror9r.s  rr��%CompressDecompressTest.testDecompress"s&���~�~�d�i�i�(������y�y�)rc�R�[RS5nURUS5 gr�)rrror.s  r�testDecompressEmpty�*CompressDecompressTest.testDecompressEmpty&s ���~�~�c�"������s�#rc�f�[RUR5nURUS5 gr�)rrr;ror.s  r�testDecompressToEmptyString�2CompressDecompressTest.testDecompressToEmptyString*s$���~�~�d�o�o�.������s�#rc�h�UR[[RURSS5 g)Nr�)rfrhrrr:r0s r�testDecompressIncomplete�/CompressDecompressTest.testDecompressIncomplete.s"�����*�c�n�n�d�i�i���o�Frc�b�UR[[RUR5 gr%)rfrvrrr<r0s r�testDecompressBadData�,CompressDecompressTest.testDecompressBadData1s�����'�3�>�>�4�=�=�Arc��[RURS-5nURXRS-5 grIr1r.s  r�testDecompressMultiStream�0CompressDecompressTest.testDecompressMultiStream4s.���~�~�d�i�i�!�m�,������y�y�1�}�-rc��[RURUR-5nUR	XR
5 gr%�rrr:r<ror9r.s  r�testDecompressTrailingJunk�1CompressDecompressTest.testDecompressTrailingJunk8s/���~�~�d�i�i�$�-�-�7�8������y�y�)rc��[RURS-UR-5nUR	XR
S-5 grIrCr.s  r�%testDecompressMultiStreamTrailingJunk�<CompressDecompressTest.testDecompressMultiStreamTrailingJunk<s7���~�~�d�i�i�!�m�d�m�m�;�<������y�y�1�}�-rrQN)r3r4r5r6r�r�r�r4r7r:r=r@rDrGrPrQrrr*r*s6��:�0�*�$�$�G�B�.�*�.rr*c�P�\rSrSrSrSrSrSrSrSr	Sr
S	rS
rSr
Srg
)�OpenTestiAc�.�[R"U0UD6$r%)rrJ)r+�args�kwargss   rrJ�
OpenTest.openDs���x�x��(��(�(rc���SGH�nUS:Xa[UR5 URURU5nURUR5 SSS5 [URS5n[UR
55nURX0R5 SSS5 URURS5nURUR
5UR5 SSS5 URURS5nURUR5 SSS5 [URS5n[UR
55nURX0RS-5 SSS5 GM� g!,(df   GNM=f!,(df   GN=f!,(df   N�=f!,(df   N�=f!,(df   GM�=f)N)rV�xbrPr#rbr��r
r(rJrWr9rrLro�r+rhrZ�	file_datas    r�test_binary_modes�OpenTest.test_binary_modesGsB�� �D��t�|��t�}�}�%����4�=�=�$�/�1�����	�	�"�0��d�m�m�T�*�a�*�1�6�6�8�4�	�� � ��I�I�6�+����4�=�=�$�/�1�� � �����4�9�9�5�0����4�=�=�$�/�1�����	�	�"�0��d�m�m�T�*�a�*�1�6�6�8�4�	�� � ��I�I��M�:�+�*�!�0�/��*�*��0�/��/�/��*�*��;�F �85F2�+G� G�8G&� 
F/	�2
G	�
G	�
G#	�&
G6	c���SGH�nUS:Xa[UR5 URURU5nURUR5 SSS5 [URS5n[UR
55nURX0R5 SSS5 URURS5nURUR
5UR5 SSS5 URURS5nURUR5 SSS5 [URS5n[UR
55nURX0RS-5 SSS5 GM� g!,(df   GNM=f!,(df   GN=f!,(df   N�=f!,(df   N�=f!,(df   GM�=f)N)r��xrXr#rdr�r�rQrRs    r�test_implicit_binary_modes�#OpenTest.test_implicit_binary_modesXsB���D��s�{��t�}�}�%����4�=�=�$�/�1�����	�	�"�0��d�m�m�T�*�a�*�1�6�6�8�4�	�� � ��I�I�6�+����4�=�=�#�.�!�� � �����4�9�9�5�/����4�=�=�#�.�!�����	�	�"�/��d�m�m�T�*�a�*�1�6�6�8�4�	�� � ��I�I��M�:�+�*��0�/��*�*��/�.��.�.��*�*�rVc�8�URRS5nURS[R5nSGH�nUS:Xa[UR5 URURUSS9nURU5 SSS5 [URS5n[UR55RS5nURXR5 SSS5 URURSSS9nURUR5U5 SSS5 URURSSS9nURU5 SSS5 [URS5n[UR55RS5nURXRS	-5 SSS5 GM� g!,(df   GNA=f!,(df   N�=f!,(df   N�=f!,(df   N�=f!,(df   GM�=f)
N�ascii�
)�wt�xtr_��encodingr#�rt�atr�)r9�decode�replacer)�linesepr
r(rJrWrrLro)r+r��text_native_eolrhrZrSs      r�test_text_modes�OpenTest.test_text_modesjs|���y�y����(���,�,�t�R�Z�Z�8�� �D��t�|��t�}�}�%����4�=�=�$���A�Q�����
�B��d�m�m�T�*�a�*�1�6�6�8�4�;�;�G�D�	�� � ��<�+����4�=�=�$���A�Q�� � �����4�0�B����4�=�=�$���A�Q�����
�B��d�m�m�T�*�a�*�1�6�6�8�4�;�;�G�D�	�� � ��a�,?�@�+�*�!�B�A��*�*��B�A��A�A��*�*�s<�8G�(:G�!G'�	G8�9=H	�
G	�
G$	�'
G5	�8
H	�	
H	c��SH�n[UR5 SU;aSOSnURURXS9nSSS5 UR[5 URURU5nSSS5 SSS5 M� g!,(df   NW=f!,(df   N,=f!,(df   M�=f)N)rXrPr_�t�utf-8r`)r
r(rJrf�FileExistsError)r+rhrarZs    r�test_x_mode�OpenTest.test_x_mode}s���%�D��4�=�=�!�"%��+�w�4�H����4�=�=�$��B�a��C��"�"�?�3��Y�Y�t�}�}�d�3�q��4�4�3�&�C�B��4�3��4�3�s/�B�B4�;B#�=B4�
B 	�#
B1�-B4�4
C	c��UR[UR5S5nURUR	5UR
5 SSS5 UR[UR5S5nURUR	5UR
5 SSS5 UR
R
S5nUR[UR5SSS9nURUR	5U5 SSS5 g!,(df   N�=f!,(df   N�=f!,(df   g=f)Nrdr#r\rbrlr`)rJrr:rorLr9rd)r+rZr�s   r�test_fileobj�OpenTest.test_fileobj�s���
�Y�Y�w�t�y�y�)�3�
/�1����Q�V�V�X�t�y�y�1�0�
�Y�Y�w�t�y�y�)�4�
0�A����Q�V�V�X�t�y�y�1�1��y�y����(��
�Y�Y�w�t�y�y�)�4�'�Y�
B�a����Q�V�V�X�t�,�C�
B�0�
/��
0�
0��C�
B�s#�+D�>+D+�0!D<�
D(�+
D9�<
E
c��UR[URURS5 UR[URURS5 UR[URURSSS9 UR[URURSSS9 UR[URURSSS	9 g)
N�wbt�xbtr#rlr`�ignore)�errorsr])�newline)rfrhrJr(r0s r�test_bad_params�OpenTest.test_bad_params�s������*��)�)�T�]�]�E�	;����*��)�)�T�]�]�E�	;����*��)�)�T�]�]�D�7�	�	L����*��)�)�T�]�]�D��	�	K����*��)�)�T�]�]�D�$�	�	Hrc��URRS5nURS[R5nURURSSS9nURU5 SSS5 [URS5n[UR55RS5nURXB5 SSS5 URURSSS9nURUR5U5 SSS5 g!,(df   N�=f!,(df   Nd=f!,(df   g=f)Nr\r]r^z	utf-16-ler`r#rb)r9rdrer)rfrJr(rWrrLro)r+r�rgrZrSs     r�
test_encoding�OpenTest.test_encoding�s����y�y����(���,�,�t�R�Z�Z�8��
�Y�Y�t�}�}�d�[�Y�
A�Q�
�G�G�D�M�B�
�$�-�-��
&�!�&�q�v�v�x�0�7�7��D�I����Y�8�'��Y�Y�t�}�}�d�[�Y�
A�Q����Q�V�V�X�t�,�B�
A�B�
A��
&�
&��B�
A�s$�D�:D�$!D0�
D�
D-�0
D>c�>�URURS5nURS5 SSS5 URURSSSS9nURUR	5S5 SSS5 g!,(df   NT=f!,(df   g=f)NrVsfoo�barrbr\rv)rarw�foobar)rJr(rWrorLrCs  r�test_encoding_error_handler�$OpenTest.test_encoding_error_handler�sq��
�Y�Y�t�}�}�d�
+�q�
�G�G�M�"�,�
�Y�Y�t�}�}�d�W�X�Y�
N�����Q�V�V�X�x�0�O�
N�,�
+��
N�
N�s�A=�!B�=
B�
Bc�v�URRS5nURURSSSS9nUR	U5 SSS5 URURSSSS9nURUR
5U/5 SSS5 g!,(df   NU=f!,(df   g=f)Nr\r^rlr])rarxrb�
)r9rdrJr(rWror�)r+r�rZs   r�test_newline�OpenTest.test_newline�s����y�y����(��
�Y�Y�t�}�}�d�W�d�Y�
K�q�
�G�G�D�M�L�
�Y�Y�t�}�}�d�W�d�Y�
K�q����Q�[�[�]�T�F�3�L�
K�L�
K��
K�
K�s�B�."B*�
B'�*
B8rQN)r3r4r5r6rJrTrYrhrnrqryr|r�r�rPrQrrrJrJAs6��)�;�";�$A�&�-�H�
-�1�4rrJc�.�[R"5 gr%)r�
reap_childrenrQrr�tearDownModuler��s�����r�__main__)*�testr�test.supportrrr��unittestrsrrr)r�rDr&r�rrrMrr	�test.support.os_helperr
rr�r�
import_modulerr
rrrr�TestCaserrSr�r�r*rJr�r3�mainrQrr�<module>r�s����(���	�+�	�
���
�
���&�)�3��
��!�!�%�(��7�7���$�;�x� � �;�|X/�(�X/�v05��05�fd3�(�d3�N%.�X�%.�Pv4�x�v4�r��z���M�M�O�r

Youez - 2016 - github.com/yon3zu
LinuXploit